Systems and methods for managing media content playback

ABSTRACT

Methods and systems for managing the playback of media content via a website accessed by a user computer are described. According to aspects, the methods and systems may access and retrieve various data associated with media content such as website context data, content data of the media content itself, and engagement data related to an interaction by a user with the media content playback. The methods and systems may analyze any combination of the data to identify a relevant media file that may be of interest to the user and provide the media file to the user computer for playback by the user. The analysis models may be continuously updated and used to improve media selection and streamline partnerships with third-party entities.

FIELD OF THE DISCLOSURE

The present disclosure generally relates to selecting media content foruser playback and, more particularly, to systems and methods foranalyzing various data from various sources to identify relevant mediacontent to provide for user playback on media players.

BACKGROUND

For a number of years, individuals have viewed media content astraditional media broadcasts on television sets. Typically, theindividuals tune to a specific channel and watch the programming contentthat is broadcast on that channel, or otherwise watch a recorded versionof the programming content. Companies who produce and/or broadcast thecontent have decades worth of relevant engagement and ratings data toidentify potentially popular content as well as create advertisingstrategies for the content. For example, networks may leveragedemographics and ratings data during negotiations with advertisers whowish to target the viewers of the network.

However, there is an increasing amount of usage of “alternative” screensor devices for content consumption. In particular, individuals areincreasingly using devices other than televisions to view or consumevarious media such as standalone videos and programming content. Forexample, individuals are increasingly using devices such as smartphones,tablets, notebook computers, and the like to view streaming videosdirectly on websites or via various dedicated applications. Thealternative screens typically allow for more user interaction (e.g.,skipping within videos) than does traditional television viewing.Further, individuals generally have less willingness to watch longervideos and advertisements on alternative screens. Accordingly, thetraditional engagement data and third-party data that is associated withtraditional television viewing is not necessarily applicable toalternative screen viewing. As a result, content producers and providersare not able to optimize content delivery for playback on alternativescreens.

Therefore, there is an opportunity for techniques for gathering relevantdata to improve content production and delivery to enhance the viewingexperience for individuals.

SUMMARY

In an embodiment, a computer-implemented method of prioritizing mediacontent in a media player embedded in a webpage hosted by a websiteserver and accessed by a user computer is provided. The method includesaccessing context data associated with the webpage in which the mediaplayer is embedded, retrieving, by one or more processors, engagementdata corresponding to interaction by a user during playback of at leasta portion of a set of media content, and accessing metadata associatedwith the set of media content. The method further includes determining,by the one or more processors based on at least one of the context data,the engagement data, and the metadata, a preferred media file of the setof media content, and providing an identification of the preferred mediafile to the user computer to initiate playback of the preferred mediafile via the media player.

In another embodiment, a system for prioritizing media content in amedia player embedded in a webpage hosted by a website server andaccessed by a user computer is provided. The system includes acommunication module configured to transmit data to the website server,a memory storing a set of computer-executable instructions, and aprocessor adapted to interface with the communication module and thememory. The processor is configured to execute the set ofcomputer-executable instructions to cause the processor to accesscontext data associated with the webpage in which the media player isembedded, retrieve, via the communication module, engagement datacorresponding to interaction by a user during playback of at least aportion of a set of media content, and access metadata associated withthe set of media content. The processor is further configured todetermine, based on at least one of the context data, the engagementdata, and the metadata, a preferred media file of the set of mediacontent, and provide, via the communication module, an identification ofthe preferred media file to the user computer to initiate playback ofthe preferred media file via the media player.

BRIEF DESCRIPTION OF THE DRAWINGS

The figures described below depict various aspects of the system andmethods disclosed herein. It should be understood that each figuredepicts an embodiment of a particular aspect of the disclosed system andmethods, and that each of the figures is intended to accord with apossible embodiment thereof. Further, wherever possible, the followingdescription refers to the reference numerals included in the followingfigures, in which features depicted in multiple figures are designatedwith consistent reference numerals.

FIG. 1 depicts an example configuration including various components andentities associated with managing media content playback, in accordancewith some embodiments.

FIG. 2 depicts various communications and data types associated withcomponents and entities configured to manage media content playback, inaccordance with some embodiments.

FIG. 3 depicts a signal diagram associated with managing media contentplayback, in accordance with some embodiments.

FIG. 4 depicts a flow diagram associated with an embodiment for managingmedia content playback, in accordance with some embodiments.

FIG. 5 depicts a flow diagram associated with another embodiment formanaging media content playback, in accordance with some embodiments.

FIG. 6 is a block diagram of a server, in accordance with someembodiments.

DETAILED DESCRIPTION

The novel systems and methods disclosed herein relate generally toimproving media content selection and delivery. According to certainaspects, the systems and methods are configured to interface withwebsite providers that host websites accessible by users. The websitesmay support media players that enable users to view or otherwise consumevarious media content. For example, the media content may be videos,audio, images, and/or the like. The systems and methods may account forvarious data and combinations of data to improve the selection anddelivery of media content via the websites.

Existing content delivery techniques enable users to view media contentbut offer limited features related to selecting relevant media contentfor the users to view. In this regard, users may not be engaged duringinteraction with the media player. This poses a problem for usersbecause users ultimately may not find or view desired media content.This additionally poses a problem for website providers and otherentities because user engagement is lacking. For example, a company'sadvertisement may not reach a target amount or type of viewers due tolimited demographic data and/or a lack of ability to maintain viewerengagement.

The present embodiments describe one or more central servers thatinterface with a variety of entities to retrieve or otherwise accessvarious types of data. The central server may analyze the data to selectrelevant media content in an effort to improve user engagement. Thecentral server may be configured for a variety of analyses related tothe media content selection as well as to the websites that support themedia content. In particular, the central server may access context datathat indicates a context or type of the websites (e.g., sports,lifestyle, entertainment, etc.), as well as various content dataassociated with the media content itself. Further, the central servermay communicate with the website providers to retrieve engagement datarelated to user interaction with media content playback. The centralserver may analyze a combination of this data to identify media contenthaving a greater relevancy to the website being visited as well as tothe user and what the user wishes to view.

The central server may also interface with various social networkingservices to compile data related to content that is popular. The socialmedia data may be especially relevant to a user if originated from“connections” of the user within a social networking service. In somescenarios, the users visiting the websites may wish to view popularcontent regardless of whether the users already know about the popularcontent. The central server may analyze the social network datasingularly or in combination with the content, context, and/orengagement data to improve the media content identification. In someembodiments, the social media data may have a higher priority orweighting than the other data.

The central server may further interface with various third-partyentities. In some cases, the third-party entities may be partners suchas companies wishing to avail advertisements to website users. Thecentral server may therefore prioritize some of the media content basedon priority requirements from the business partners. In other cases, thethird-party entities may offer applications or platforms to assist thecentral server with collecting various of the data to be analyzed, ormay otherwise serve as sources for some of the data to be analyzed. Thecentral server may also update its analysis models with updated datathat is collected when users view content via the media players.

The systems and methods therefore offer numerous benefits. Inparticular, users of websites are presented with more relevant mediacontent or otherwise with media content that the users enjoy viewing.Further, websites may improve user engagement metrics by providing userswith content that is more relevant to the websites as well as to theusers, which can lead to increased revenues. Advertising metrics mayalso be improved when the users are more engaged with viewingadvertisements. The systems and methods further enable the centralentities to continuously improve its analysis models with a continuouslyincreased value to numerous entities as well as end users.

The systems and methods discussed and envisioned herein may be extendedto a wide variety of technologies and technical fields. In particular,the systems and technologies may be implemented across variousindustries such as entertainment, advertising, news, education, andothers. The systems and methods, therefore, improve content selectionand delivery across all of these technologies and technical fields.

Although the following text sets forth a detailed description ofnumerous different embodiments, it should be understood that the legalscope of the invention is defined by the words of the claims set forthat the end of this patent. The detailed description is to be construedas exemplary only and does not describe every possible embodiment, asdescribing every possible embodiment would be impractical, if notimpossible. One could implement numerous alternate embodiments, usingeither current technology or technology developed after the filing dateof this patent, which would still fall within the scope of the claims.

FIG. 1 depicts an example environment 100 associated with processingvarious data improve media selection and playback. Although FIG. 1depicts certain entities, components, and devices, it should beappreciated that additional or alternate entities and components areenvisioned.

As illustrated in FIG. 1, the environment 100 includes an analysisserver 105 configured to facilitate various of the functionalities asdiscussed herein. The analysis server 105 may include any combination ofhardware and software modules or applications that are configured tosupport and implement various features of the described systems andmethods. Further, the analysis server 105 may be associated with anycompany, corporation, individual, group of individuals, or the like.Generally, the analysis server 105 is configured to compile and analyzedata from various sources and entities to facilitate the selection ofmedia content for user playback. As used herein, “media content” mayrefer to any type of digital media data configured to be communicatedbetween components as well as output via hardware devices. Inparticular, the media content may include, but is not limited to, audiodata, video data, image data, and/or any combination thereof. The mediacontent may be in the form of media files having various formats suchas, for example, .wm, .wmv, .asf, .m2ts, .m2t, .mov, .qt, .avi, .wtv,.dvr-ms, .mp4, .mov, .mov, .mpeg, .mpg, .mpe, .m1v, .mp2, .mpv2, .mod,.vob, .m1v, .avi, .mov, .asx, .wm, .wma, .wmx, .wav, .mp3, .m3u, .aac,.jpg, .jpeg, .hdp, .wdp, .tif, .tiff, .raw, .gif, .bmp, .png, and/orother standard or proprietary formats.

The analysis server 105 may interface with storage 109 that storesvarious information and data that may be accessed by the analysis server105. The storage 109 can include one or more forms of volatile and/ornon-volatile, fixed and/or removable memory, such as read-only memory(ROM), electronic programmable read-only memory (EPROM), random accessmemory (RAM), erasable electronic programmable read-only memory(EEPROM), and/or other hard drives, flash memory, MicroSD cards, andothers. Although illustrated as separate from the analysis server 105,it should be appreciated that the storage 109 may alternatively beincluded as part of the analysis server 105.

The analysis server 105 is configured to communicate with one or moremedia entities 115 and one or more website providers 125 via one or morenetworks 120. Generally, the media entities 115 produce, avail, and/orotherwise store media content for viewing by users. For example, acompany may produce and locally host a set of video advertisements. Insome cases, the analysis server 105 may retrieve media content from themedia entities 115 and store the retrieved media content in the storage109. In other cases, the analysis server 105 may identify or access alocation (e.g., a uniform resource locator (URL)) of media contentstored on the media entities 115. It should be appreciated that themedia content may originate from other entities other than the mediaentities 115.

The website providers 125 are configured to host websites for access bythe users. In embodiments, the websites of the website providers 125 maysupport various media players via which media content may be accessed,viewed, or the like. In particular, when a user accesses a website usingan electronic device, the website may render a corresponding mediaplayer on the web browser of the electronic device. Although theembodiments describe the media players being rendered within a webbrowser, it should be appreciated that the media players may beimplemented, accessed, rendered, or the like within other components orprograms such as, for example, dedicated applications installed onelectronic devices. It should be appreciated that various types andimplementations of the media players are envisioned. In some cases, amedia player of a website may be programmed within code (e.g.,computer-readable instructions) associated with the website so that whena user accesses the website, the media player appears embedded withinthe website. It should be appreciated that the website may support themedia player via other techniques. Generally, a media player enablesmedia content such as various media files to be played or outputtherefrom. The media player may support playback of single media filesand/or multiple media files that may be arranged in one or moreplaylists. The media player may access and retrieve the media contentfrom various sources such as the storage 109, the media entities 115, orother sources. In some cases, the website providers 125 may locally hostthe media content.

The users may use a variety of electronic devices 110 to access themedia players and the associated media content via the websites of thewebsite providers 125. For example, the electronic devices 110 mayinclude smartphones, PDAs, tablet devices, notebook computers, desktopcomputers, and/or any other device configured to display or presentmedia content. In operation, when an electronic device 110 accesses awebsite, the electronic device 110 may execute a media player via whichmedia content may be played, where the media player is rendered on theweb browser of the electronic device 110 by the website provider 125.The electronic device 110 may enable a user to interact with and makeselections indicated in the media players. The electronic devices 110may communicate with the web site providers 125 (and in some cases, theanalysis server 105 and the media entities 115) via the network(s) 120.It should be understood that the network(s) 120 can facilitate any typeof data communication via any standard or technology (e.g., GSM, CDMA,TDMA, WCDMA, LTE, EDGE, OFDM, GPRS, EV-DO, UWB, IEEE 802 includingEthernet, WiMAX, and/or others).

As illustrated in FIG. 1, the analysis server 105 may include a contextanalysis module 106, an engagement analysis module 107, a contentanalysis module 108, a social media analysis module 111, and a topicalanalysis module 112. Each of the context analysis module 106, theengagement analysis module 107, the content analysis module 108, thesocial media analysis module 111, and the topical analysis module 112may interface with various components and interfaces of the analysisserver 105 to support and facilitate the corresponding functionalities.Further, one or more users or individuals (e.g., developers,programmers, administrators, etc.) may interface with each of thecontext analysis module 106, the engagement analysis module 107, thecontent analysis module 108, the social media analysis module 111, andthe topical analysis module 112. Although illustrated as separatemodules within the analysis server 105, it should be appreciated thattwo or more of the context analysis module 106, the engagement analysismodule 107, the content analysis module 108, the social media analysismodule 111, and the topical analysis module 112 may be combined into asingle module.

The context analysis module 106 is generally configured to access andanalyze information about the websites hosted by the website providers125. For example, the context analysis module 106 may access and analyzeHyperText Markup Language (HTML) code (and specifically, the tags of theHTML code) of individual webpages of the websites. Further, the contextanalysis module 106 may analyze URLs associated with the individualwebpages. According to embodiments, the website information may indicatethe type of website and the content thereof. For example, if the HTMLcode or any URLs of a website include the words “basketball,”“baseball,” “hockey,” and “football,” then the context analysis module106 may deduce that the website is a sports website. It should beappreciated that the context analysis module 106 may examine or analyzethe website using data separate from (and/or data included in) dataassociated with the media player. In particular, the context analysismodule 106 may “crawl” the data of the websites to identify keywords,tags, and other relevant data, as well as perform any semantic analysison the identified data. The context analysis module 106 may perform itsidentification and analysis at any point, and may associate theresulting data with a URL of the website. It should be appreciated thatthe context analysis module 106 may use any type of technique, model,algorithm, or the like to analyze the website information and determinea type or context of the website based on the analysis.

The engagement analysis module 107 is generally configured to analyzeengagement data associated with a user's engagement and interaction withthe websites (and media players thereof) hosted by the website providers125. Typically, when a user accesses a website, the website can send adata snippet that is stored as a local data store on the web browser ofthe user. For example, the local data store may be in the form of acookie. The local data stores can enable the website to store variousstateful information (e.g., user login information). Further, the localdata stores for each website hosted by the website providers 125 mayrecord the user's activity on the website (e.g., button clicks, logins,page visits, etc.). In particular, the local data stores may record theuser's activity related to playback of media content. For example, if awebsite embeds a video player, a cookie associated with the website canrecord user activity data such as play/pause/stop instances, full screenselections, volume adjustments, fast-forwarding, rewinding, amount ofviews, and the like. It should be appreciated that other techniques andcomponents are envisioned for collecting and/or recording activityinformation such as web page scripts and others. In someimplementations, various device identification and canvas fingerprintingtechniques support general identifying data corresponding to the user,where the identifying data may correlate the user to a certain browserconfiguration which can be inferred to be the same user, without theneed for client storage.

The engagement analysis module 107 may access the local data stores toretrieve and analyze the user activity data. In particular, theengagement analysis module 107 may store user activity datacorresponding to an associated local data store of the electronic device110. The analysis of the local data stores may indicate media contentviewing habits of the users. For example, the engagement analysis module107 may determine that a particular user typically skips videoadvertisements that are longer than thirty (30) seconds. In embodiments,the engagement analysis module 107 may analyze local data store data fora plurality of users across a plurality of website providers 125 torefine the analysis and determinations. Essentially, the engagementanalysis module 107 may serve as a data management platform (DMP) thatenables individuals or entities to create target audiences based onfirst-party and/or third-party browsing data, tailor campaigns to theseaudiences across third-party ad networks and exchanges, and measure theperformance of campaigns across segments and channels. It should beappreciated that the engagement analysis module 107 may use any type oftechnique, model, algorithm, or the like to analyze the websiteinformation, determine viewing habits, and formulate strategies formedia content selection.

The content analysis module 108 is generally configured to examine dataassociated with media content itself. In particular, the contentanalysis module 108 may examine metadata associated with individualmedia content files to identify keywords or tags included in themetadata. For example, if one media content file is an instructionalvideo on how to grill a steak, the content analysis module 108 mayidentify, from video metadata, words or phrases such as “steak,”“grilling,” “how-to,” and “cooking.” The content analysis module 108 mayfurther identify the keywords or tags from closed-captioning textassociated with the media content. In some implementations, the contentanalysis module 108 may extract content data from the media contentbased on time log information. For example, a video file may include acake baking portion from 0:01 to 4:45, followed by a salmon grillingportion from 4:46 to 10:00, whereby the content analysis module 108 mayextract the corresponding content data based on which portion a user isviewing or has viewed.

The analysis server 105 may also communicate with various socialnetworking services 135 via the network(s) 120. Generally, each socialnetworking service 135 is a platform that supports social networks orsocial relations among people who share interests, activities,backgrounds, and/or real-life connections. Users within each socialnetworking service 135 typically have an account with an associatedprofile and social links, whereby the social networking service 135enables a variety of services for the users. According to embodiments,the social networking service 135 may send, to the analysis server 105,data related to media content consumption. The social networking datamay include viewership metrics of various media content.

According to embodiments, the social media analysis module 111 mayanalyze the data retrieved from the social networking service 135 tofurther refined media content file selection. For example, the socialmedia analysis module 111 may determine that a certain media file isshared between connections within the social networking service 135, andmay prioritize the certain media file accordingly. Similarly, thetopical analysis module 112 may analyze the data retrieved from thesocial networking service 135 to identify media files that are popular(e.g., “viral” or “trending” content). For example, the topical analysismodule 112 may determine that a certain media file is “viral” if it isviewed or shared a threshold amount of times within a certain timeperiod. Therefore, each of the modules 106, 107, 108, 111, and 112 ofthe analysis server 105 may perform a separate analysis of associateddata, whereby the analyses may be used singularly or in combination witheach other to identify relevant media files for playback within themedia players.

A set of third-party sources 130, such as any company, corporation,individual, group of individuals, or the like, may also communicate withthe analysis server 105 via the network(s) 120. According to someembodiments, the third-party sources 130 may partner with an entityassociated with the analysis server 105, such as companies wishing toavail advertisements to website users. The analysis server 105 maytherefore prioritize some of the media content based on priorityrequirements from the third-party sources 130. In other embodiments, thethird-party entities 130 may offer applications or platforms to assistthe analysis server 105 with collecting various of the data to beanalyzed, or may otherwise serve as sources for some of the data to beanalyzed. For example, the third-party entities 130 may compile variousdata that the engagement analysis module 107 may use as part of its DMPfunctionalities.

In operation, the analysis server 105 (and modules thereof) may analyzeall available data to identify or select relevant media content toprovide to the electronic devices 110 or otherwise cause the electronicdevices 110 to avail to users, when the electronic devices 110 areaccessing the associated website providers 125. The analysis server 105may further update its models and algorithms as new engagement data orother data is received, thus improving the media content selection.Additionally, the analysis server 105 may provide feedback to various ofthe third-party sources 130, website providers 125, and/or mediaentities 115, to help the relevant entities in creating new mediacontent, availing different content, or for other benefits.

FIG. 2 illustrates envisioned benefits of the systems and methodsdiscussed herein. FIG. 2 depicts an analysis server 205 (such as theanalysis server 105 as discussed with respect to FIG. 1), one or morethird-party sources or applications 230 (such as the third-party sources130 as discussed with respect to FIG. 1), one or more electronic devices110 (such as the electronic devices 110 as discussed with respect toFIG. 1), and one or more website providers 225 (such as the websiteproviders 125 as discussed with respect to FIG. 1).

Generally, the third-party sources or applications 230 may provide, tothe analysis server 205, data related to media content playback viawebsites hosted by the website providers 225 and accessed by theelectronic devices 210. In some cases, the data may be in the form ofpriority or requirements that may specify the analysis server 205 toselect specific media content to provide to the electronic devices 210.In other cases, the data may be collected by the third-party sources230, where the data is associated with playback of the media content. Inparticular, the data may be related to one of more of the categoriesillustrated in FIG. 2: behavioral, audience, advertising, verification,and metadata/information. The behavioral data may include, but is notlimited to: site-level performance (e.g., page and media content),asset-level performance, user/audience behavior, publisher performance,provider performance, player performance, page/asset social activity,and/or the like. The analysis server 205 may compile the behavioral datafrom various of the third-party sources or applications 230 such asvideo hosting sites, marketing or analytics sources, video players,other websites, social channels, and others.

The audience data may include, but is not limited to: audiencedemographic information and segmentation, first party viewer data,consumer demographic information, consumer interests, online/offlineconsumer behavior, and/or the like. The analysis server 205 may compilethe behavioral data from various of the third-party sources orapplications 230 such as cross-media verification and informationservices, marketing and information management services, consumer datacollection companies, and others.

The advertising data may include, but is not limited to: advertisingcampaigns and performance data, advertising revenue and payment data,campaign validation measurements, and/or the like. The analysis server205 may compile the advertising data from various of the third-partysources or applications 230 such as internet analytics companies, admanagement technology, ad trafficking services, monetization analyticscompanies, and others.

The verification data may include, but is not limited to: network andsite-level performance data, network and site-level audienceinformation, traffic and advertising viewing metrics, and/or the like.The analysis server 205 may compile the verification data from variousof the third-party sources or applications 230 such as internetanalytics companies, advertising campaign rating entities, contentprotection systems, and others.

The metadata/information may include, but is not limited to: asset-levelmetadata, publisher or provider deal terms, publisher information,player information, page-level data and placement, and/or the like. Theanalysis server 205 may compile the metadata/information from various ofthe third-party sources or applications 230 such as content managementsystems, client portals, partner teams, media management assistants, andothers.

FIG. 3 depicts an example signaling diagram 300 facilitated by variouscomponents and entities, and associated with managing media contentidentification and playback. The signaling diagram 300 includes storage309 (such as the storage 109 as discussed with respect to FIG. 1), ananalysis server 305 (such as the analysis server 105 as discussed withrespect to FIG. 1), a set of third-party sources 330 (such as thethird-party sources 110 as discussed with respect to FIG. 1), a websiteprovider 325 (such as the website provider 125 as discussed with respectto FIG. 1), a user computer 310 (such as one of the electronic devices110 as discussed with respect to FIG. 1), and a social networkingservice 335 (such as the social networking service 135 as discussed withrespect to FIG. 1).

The functionalities may begin with a user using the user computer 310 toaccess (340) a website hosted by the website provider 325. In somecases, the user may navigate throughout various webpages of the website.When the user computer 310 navigates to a webpage that supports a mediaplayer embedded therein, the website provider 325 may render the mediaplayer on the web browser of the user computer 310 and the user computer310 may initiate (342) the media player. For example, the media playermay be a video player configured to play a set of videos. Inembodiments, the markup language associated with the webpage may includeprogram code for the embedded media player.

The user computer 310 may record (344) engagement data from the usercomputer 310 related to user interaction with the media contentplayback. In particular, the engagement data may indicateplay/pause/stop actions, volume adjustments, media completion data(e.g., in deciles), screen size adjustments, playlist or controlactions, and/or other data. The engagement data may be associated withone or more local data stores that are associated with the website andstored on the user computer 310. The user computer 310 may send (348)the engagement data and optionally any website context data to theanalysis server 305. In embodiments, the user computer 310 may send theengagement data to the analysis server 305 in real-time as the usercomputer 310 records the engagement data, such that the user computer310 need not store the engagement data. In some cases, the analysisserver 305 may examine or access any website data to identify thewebsite context data. In particular, the analysis server 305 may analyzeHTML code (and specifically, the tags of the HTML code) of individualwebpages of the website as well as analyze any URLs associated with theindividual webpages. In some implementations, a crawler component (thatmay be separate from or part of the analysis server 305) may perform adeep extraction on the webpages of the website as well as the mediafiles associated therewith, and record the resulting data. The analysisserver 305 may store the engagement data received from the user computer310 for subsequent access or retrieval. In particular, the analysisserver 305 may associate the engagement data with an identification(e.g., a cookie) of the user computer 310, such that the analysis server305 maintains which engagement data is associated with which usercomputer 310.

In an optional embodiment, one of the third-party sources 330 may send(346) priority requirements to the analysis server 305. For example, acompany wishing to advertise on the website of the website provider 325may request for the analysis server 305 to play advertisements for thecompany (essentially, “branded content”) in the embedded media player.As another example, an entity may wish to push out a new series of mediacontent in an effort to gain initial views. It should be appreciatedthat other situations and scenarios are envisioned for the third-partysource 330 to submit priority requirements for playback of media files.

The analysis server 305 may retrieve (350), from the storage 309, mediacontent data. According to embodiments, the media content data mayinclude metadata associated with the media files available in thestorage 309. The metadata may indicate keywords or tags for the mediafiles, which may indicate the types of media files as well as thecontent of the media files. In embodiments, the analysis server 305 mayretrieve (352) social media data from the social media service 335. Thesocial media data may indicate media files that are “viral,” “trending,”or otherwise have numerous views by users of various social networks.Further, the social media data may indicate media files associated withbreaking news that may be of interest to users. The analysis server 305may access the media files indicated in the social media data via a filepath, link, or the like. In some cases, the analysis server 305 maystore the media files indicated in the social media data in the storage309.

The analysis server 305 may identify (354) appropriate media (or apreferred media file) based on one or more of the priority requirements,the engagement data, the website context data, the media context data,and the social media data. It should be appreciated that the analysisserver 305 may weight or prioritize the data according to anyconvention. For example, the priority requirements may prevail over allof the engagement data, the website context data, the media contextdata, and the social media data. For further example, the engagementdata, the website context data, the media context data, and the socialmedia data may be weighted equally. Additionally, the analysis server305 may identify, from the social media data, a media file as popular ifthe media file has been viewed at least a threshold number of times. Asan additional example, the analysis server 305 may identify a media filebased on a combination of the social media data and the engagement data.It should be appreciated that the analysis server 305 may perform orexecute any type of model or algorithm in analyzing the data to identifythe appropriate media.

After identifying the appropriate media, the analysis server 305 canretrieve (356) the media file from the storage 309. In some cases inwhich the media file may not be stored in the storage 309, the analysisserver 305 may identify and record a link or reference (e.g., a URL) tothe media file. The analysis server 305 can provide (358) the media fileto the user computer 310, or otherwise cause the user computer 310 toaccess the media file (e.g., by providing the user computer 310 with alink to the media file). The user computer 310 may initiate (360)playback of the media file in the embedded media player. In some cases,the user computer 310 may load the media file within the embedded mediaplayer and the user of the user computer 310 may request to startplayback of the media file (e.g., by selecting a “play” selection withinthe media player).

During playback of the media file, the user computer 310 may record(362) engagement data of the user. In particular, the user computer 310may detect various selections made by the user during playback of themedia file, and the user computer 310 may record the selections in anappropriate local data store stored on the user computer 310. The usercomputer 310 may provide (364) the updated engagement data to theanalysis server 305. In some cases, the analysis server 305 may requestthe updated engagement data from the user computer 310. The analysisserver 305 may store the updated engagement data received from the usercomputer 310 for subsequent access or retrieval. In particular, theanalysis server 305 may associate the updated engagement data with anidentification (e.g., a cookie) of the user computer 310.

The analysis server 305 may facilitate additional playback of additionalmedia files within the media player. In particular, the analysis server305 may identify (366) a subsequent media file based on various factorssuch as any of the updated engagement data, the original engagementdata, website context data, media content data, social media data,and/or priority requirements. In this regard, the analysis server 305may facilitate continuous playback of a plurality of media files withinthe media player. Further, the analysis server 305 may be configured toupdate the various models and/or algorithms used to identify the mediafiles based on the updated and/or original engagement data as well asany additional website context data, media content data, social mediadata, and/or priority requirements. Accordingly, the analysis server 305may become “smarter” in identifying more relevant or desirable mediafiles.

The analysis server 305 may also provide (368) feedback related to themedia file playback to one of the third party sources 330. For example,the analysis server 305 may determine that users are more engaged withcertain media files versus other media files. Further, for example, theanalysis server 305 may determine that users are generally more engagedwhile viewing a 30-second advertisement than when viewing a 60-secondadvertisement. It should be appreciated that additional feedback metricsare envisioned. Although not depicted in FIG. 2, it should beappreciated that various of the third-party sources 330 may provide, tothe analysis server 305, additional metrics related to the media contentplayback.

Referring to FIG. 4, depicted is a block diagram of an example method400 for prioritizing media content in a media player embedded in awebpage hosted by a website server. The method 400 may be facilitated bya server, such as the analysis server 105 as discussed with respect toFIG. 1. The server may support one or more modules to facilitate thevarious functions as well as various interfaces to enable user input andselections. The analysis server 105 may facilitate the method 400 inresponse to a user computer accessing the webpage hosted by the websiteserver, whereby the webpage renders a media player for playback of mediafiles by the user computer.

The method 400 can begin with the server determining (block 405) whetherpriority or requirement data has been received or detected. In somecases, the priority or requirement data may be received from athird-party entity with associated media content that may have aplayback priority. If priority or requirement data has been received ordetected (“YES”), the server can identify (block 410), based on thepriority or requirement data, a priority media file. Further, the servercan provide (block 415) the identification of the priority media file tothe user computer for playback of the priority media file in the mediaplayer. In embodiments, the server can retrieve the priority media filefrom storage and provide the priority media file directly to the usercomputer, or the server can provide an identification (e.g., a URL) ofthe priority media file to the user computer, where the user computercan access the priority media file via the identification.

If priority or requirement data has not been received or detected(“NO”), the server can access (block 420) context data associated withthe webpage in which the media player is embedded or rendered. Inparticular, the server may access a set of tags included in markuplanguage for the website, and may identify one or more keywords from theset of tags. The server may also “crawl” the website to accessadditional data as well as semantically analyze any accessed data. Theserver can further retrieve (block 425) engagement data corresponding tointeraction by a user during playback of at least a portion of a set ofmedia content. In particular, the server may retrieve or otherwiseaccess engagement data associated with a local data store stored on aweb browser of the user computer that indicates various interactions oractions that the user performs during the playback. Additionally, theserver can access (block 430) metadata associated with the set of mediacontent. In particular, the server can examine the metadata to identifya set of keywords associated with the media content.

The server can determine (block 435), based on at least one of thecontext data, the engagement data, and the metadata, a preferred mediafile of the set of media content. It should be appreciated that theserver, in identifying the preferred media file, can weight the contextdata, the engagement data, and the metadata in any combination and/oraccording to any technique or algorithm. The server can provide (block440) an identification of the preferred media file to the user computerto initiate playback of the preferred media file via the media player.In some cases, the server can retrieve the preferred media file fromstorage and provide the preferred media file directly to the usercomputer. In other cases, the server can provide an identification(e.g., a URL) of the preferred media file to the user computer, wherethe user computer can access the preferred media file via theidentification.

The server may also receive (block 445) updated engagement data from theuser computer, where the updated engagement data may correspond to theuser's interaction during playback of the preferred media file. Theserver may update (block 450) the engagement data to reflect the updatedengagement data. The server may therefore maintain up-to-dateinformation associated with the user that the server may use to selector identify additional media files for playback on the media player.

The server may compile (block 455), based on the updated engagementdata, feedback associated with the playback of the preferred media file.In embodiments, the feedback may include metrics associated with theuser's interaction during playback of the preferred media file. Theserver may provide (block 460) the feedback to a third-party entity. Inembodiments, the third-party entity may be any entity with an interestin the feedback, such as a marketing company, an advertising entity, acompany, or the like.

Referring to FIG. 5, depicted is a block diagram of an example method500 for managing playback of media content in a media player embedded ina webpage hosted by a website server. The method 500 may be facilitatedby a server, such as the analysis server 105 as discussed with respectto FIG. 1. The server may support one or more modules to facilitate thevarious functions as well as various interfaces to enable user input andselections. The analysis server 105 may facilitate the method 500 inresponse to a user computer accessing the webpage hosted by the websiteserver, whereby the webpage renders a media player for playback of mediafiles by the user computer

The method 500 can begin with the server detecting (block 505) aninitial playback of a media file within the media player. The server canfurther retrieve (block 510) engagement data corresponding tointeraction by a user during the initial playback of the media file. Inparticular, the server may retrieve or otherwise access engagement dataassociated with a local data store stored on a web browser of the usercomputer that indicates various interactions or actions that the userperforms during the playback. Although not depicted in FIG. 5, theserver can also access context data associated with the webpage in whichthe media player is embedded. In particular, the server may access a setof tags included in markup language for the website, may identify one ormore keywords from the set of tags, or may perform other “crawling” oranalysis techniques. The server can additionally access metadataassociated with the media file. In particular, the server can examinethe metadata to identify a set of keywords associated with the mediafile.

The server may receive (block 515) social media data related to playbackof a set of media content by a set of additional users. In embodiments,the set of additional users may or may not be “connected” to the userwithin the social network service. The server can identify (block 520),based on the engagement data and the social media data (and in somecases, the context data and the content data), a preferred media file ofthe set of media content. In one embodiment, the server can determinethat the preferred media file has been viewed at least a thresholdnumber of times. Further, in identifying the preferred media file, theserver can determine, based on the engagement data, that the preferredmedia file is relevant to the user.

The server can provide (block 525) an identification of the preferredmedia file to the user computer to initiate playback of the preferredmedia file via the media player. In some cases, the server can retrievethe preferred media file from storage and provide the preferred mediafile directly to the user computer. In other cases, the server canprovide an identification (e.g., a URL) of the preferred media file tothe user computer, where the user computer can access the preferredmedia file via the identification.

The server may also receive (block 530) updated engagement data from theuser computer, where the updated engagement data may correspond to theuser's interaction during playback of the preferred media file. Theserver may update (block 535) the engagement data to reflect the updatedengagement data. The server may therefore maintain up-to-dateinformation associated with the user that the server may use to selector identify additional media files for playback on the media player.

The server may compile (block 540), based on the updated engagementdata, feedback associated with the playback of the preferred media file.In embodiments, the feedback may include metrics associated with theuser's interaction during playback of the preferred media file. Theserver may provide (block 545) the feedback to a third-party entity. Inembodiments, the third-party entity may be any entity with an interestin the feedback, such as a marketing company, an advertising entity, acompany, or the like.

FIG. 6 illustrates a diagram of an example server 605 (such as theanalysis server 105 discussed with respect to FIG. 1) in which thefunctionalities as discussed herein may be implemented.

The server 605 can include a processor 622 as well as a memory 678. Thememory 678 can store an operating system 679 capable of facilitating thefunctionalities as discussed herein as well as a set of applications 675(i.e., machine readable instructions). For example, one of the set ofapplications 675 can be a content analysis application 684 configured toexamine metadata of media content, another of the set of applications675 can be an engagement analysis application 685 configured to compileengagement data related to user interactions with media content, anotherof the set of applications 675 can be a context analysis application 686configured to examine website data, another of the set of applications675 can be a social media analysis module configured to analyze socialmedia data, and another of the applications 675 can be a topicalanalysis module 692 configured to identify “trending” or “viral”content. It should be appreciated that other applications areenvisioned.

The processor 622 can interface with the memory 678 to execute theoperating system 679 and the set of applications 675. According toembodiments, the memory 678 can also store media content 680 such asvideos, images, audio files, and/or the like. The memory 678 can includeone or more forms of volatile and/or non-volatile, fixed and/orremovable memory, such as read-only memory (ROM), electronicprogrammable read-only memory (EPROM), random access memory (RAM),erasable electronic programmable read-only memory (EEPROM), and/or otherhard drives, flash memory, MicroSD cards, and others.

The server 605 can further include a communication module 677 configuredto communicate data via one or more networks 620. According to someembodiments, the communication module 677 can include one or moretransceivers (e.g., WWAN, WLAN, and/or WPAN transceivers) functioning inaccordance with IEEE standards, 3GPP standards, or other standards, andconfigured to receive and transmit data via one or more external ports678. For example, the communication module 677 can send, via the network620, various media content to user computers. The processing server 605may further include a user interface 681 configured to presentinformation to a user and/or receive inputs from the user. As shown inFIG. 6, the user interface 681 includes a display screen 682 and I/Ocomponents 683 (e.g., ports, capacitive or resistive touch sensitiveinput panels, keys, buttons, lights, LEDs, speakers, microphones).According to embodiments, the user may access the server 605 via theuser interface 681 to input media content requirements, analyze variousdata, and/or perform other functions. In some embodiments, the server605 can perform the functionalities as discussed herein as part of a“cloud” network or can otherwise communicate with other hardware orsoftware components within the cloud to send, retrieve, or otherwiseanalyze data.

In general, a computer program product in accordance with an embodimentincludes a computer usable storage medium (e.g., standard random accessmemory (RAM), an optical disc, a universal serial bus (USB) drive, orthe like) having computer-readable program code embodied therein,wherein the computer-readable program code is adapted to be executed bythe processor 622 (e.g., working in connection with the operating system679) to facilitate the functions as described herein. In this regard,the program code may be implemented in any desired language, and may beimplemented as machine code, assembly code, byte code, interpretablesource code or the like (e.g., via C, C++, Java, Actionscript,Objective-C, Javascript, CSS, XML). In some embodiments, the computerprogram product may be part of a cloud network of resources.

Throughout this specification, plural instances may implementcomponents, operations, or structures described as a single instance.Although individual operations of one or more methods are illustratedand described as separate operations, one or more of the individualoperations may be performed concurrently, and nothing requires that theoperations be performed in the order illustrated. Structures andfunctionality presented as separate components in example configurationsmay be implemented as a combined structure or component. Similarly,structures and functionality presented as a single component may beimplemented as separate components. These and other variations,modifications, additions, and improvements fall within the scope of thesubject matter herein.

Additionally, certain embodiments are described herein as includinglogic or a number of routines, subroutines, applications, orinstructions. These may constitute either software (e.g., code embodiedon a non-transitory, machine-readable medium) or hardware. In hardware,the routines, etc., are tangible units capable of performing certainoperations and may be configured or arranged in a certain manner. Inexample embodiments, one or more computer systems (e.g., a standalone,client or server computer system) or one or more hardware modules of acomputer system (e.g., a processor or a group of processors) may beconfigured by software (e.g., an application or application portion) asa hardware module that operates to perform certain operations asdescribed herein.

In various embodiments, a hardware module may be implementedmechanically or electronically. For example, a hardware module maycomprise dedicated circuitry or logic that is permanently configured(e.g., as a special-purpose processor, such as a field programmable gatearray (FPGA) or an application-specific integrated circuit (ASIC)) toperform certain operations. A hardware module may also compriseprogrammable logic or circuitry (e.g., as encompassed within ageneral-purpose processor or other programmable processor) that istemporarily configured by software to perform certain operations. Itwill be appreciated that the decision to implement a hardware modulemechanically, in dedicated and permanently configured circuitry, or intemporarily configured circuitry (e.g., configured by software) may bedriven by cost and time considerations.

Accordingly, the term “hardware module” should be understood toencompass a tangible entity, be that an entity that is physicallyconstructed, permanently configured (e.g., hardwired), or temporarilyconfigured (e.g., programmed) to operate in a certain manner or toperform certain operations described herein. Considering embodiments inwhich hardware modules are temporarily configured (e.g., programmed),each of the hardware modules need not be configured or instantiated atany one instance in time. For example, where the hardware modulescomprise a general-purpose processor configured using software, thegeneral-purpose processor may be configured as respective differenthardware modules at different times. Software may accordingly configurea processor, for example, to constitute a particular hardware module atone instance of time and to constitute a different hardware module at adifferent instance of time.

Hardware modules can provide information to, and receive informationfrom, other hardware modules. Accordingly, the described hardwaremodules may be regarded as being communicatively coupled. Where multipleof such hardware modules exist contemporaneously, communications may beachieved through signal transmission (e.g., over appropriate circuitsand buses) that connect the hardware modules. In embodiments in whichmultiple hardware modules are configured or instantiated at differenttimes, communications between such hardware modules may be achieved, forexample, through the storage and retrieval of information in memorystructures to which the multiple hardware modules have access. Forexample, one hardware module may perform an operation and store theoutput of that operation in a memory device to which it iscommunicatively coupled. A further hardware module may then, at a latertime, access the memory device to retrieve and process the storedoutput. Hardware modules may also initiate communications with input oroutput devices, and can operate on a resource (e.g., a collection ofinformation).

The various operations of example methods described herein may beperformed, at least partially, by one or more processors that aretemporarily configured (e.g., by software) or permanently configured toperform the relevant operations. Whether temporarily or permanentlyconfigured, such processors may constitute processor-implemented modulesthat operate to perform one or more operations or functions. The modulesreferred to herein may, in some example embodiments, compriseprocessor-implemented modules.

Similarly, the methods or routines described herein may be at leastpartially processor-implemented. For example, at least some of theoperations of a method may be performed by one or more processors orprocessor-implemented hardware modules. The performance of certain ofthe operations may be distributed among the one or more processors, notonly residing within a single machine, but deployed across a number ofmachines. In some example embodiments, the processor or processors maybe located in a single location (e.g., within a home environment, anoffice environment or as a server farm), while in other embodiments theprocessors may be distributed across a number of locations.

The performance of certain of the operations may be distributed amongthe one or more processors, not only residing within a single machine,but deployed across a number of machines. In some example embodiments,the one or more processors or processor-implemented modules may belocated in a single geographic location (e.g., within a homeenvironment, an office environment, or a server farm). In other exampleembodiments, the one or more processors or processor-implemented modulesmay be distributed across a number of geographic locations.

It should also be understood that, unless a term is expressly defined inthis patent using the sentence “As used herein, the term ‘ ’ is herebydefined to mean . . . ” or a similar sentence, there is no intent tolimit the meaning of that term, either expressly or by implication,beyond its plain or ordinary meaning, and such term should not beinterpreted to be limited in scope based on any statement made in anysection of this patent (other than the language of the claims). To theextent that any term recited in the claims at the end of this disclosureis referred to in this disclosure in a manner consistent with a singlemeaning, that is done for sake of clarity only so as to not confuse thereader, and it is not intended that such claim term be limited, byimplication or otherwise, to that single meaning. Finally, unless aclaim element is defined by reciting the word “means” and a functionwithout the recital of any structure, it is not intended that the scopeof any claim element be interpreted based on the application of 35U.S.C. § 112, sixth paragraph.

What is claimed:
 1. A computer-implemented method of prioritizingrelevant media content in a media player embedded in a webpage hosted bya website server and accessed by a user computer, the method comprising:accessing context data associated with the webpage in which the mediaplayer is embedded; retrieving, by one or more processors, engagementdata corresponding to media content viewing interaction activities bythe accessing user during playback of at least a portion of a set ofmedia content, the engagement data including an amount of views of mediafiles that the accessing user has initiated, a play time for each of theviews, and subsequent plays of the media files; accessing individualmedia content file metadata associated with the set of media content;determining, by the one or more processors based on the context data,the engagement data, and the individual media content file metadata, apreferred media file of the set of media content; and providing anidentification of the preferred media file to the accessing usercomputer to initiate playback of the preferred media file via the mediaplayer.
 2. The computer-implemented method of claim 1, wherein providingthe identification of the preferred media file to the user computercomprises: identifying a uniform resource locator (URL) associated withthe preferred media file; retrieving the preferred media file fromstorage based on the identified uniform resource locator (URL); andproviding the URL associated with the preferred media file to theaccessing user computer.
 3. The computer-implemented method of claim 1,wherein the context data associated with the webpage in which the mediaplayer is embedded includes a size of the media player.
 4. Thecomputer-implemented method of claim 1, wherein accessing the contextdata associated with the webpage comprises: accessing markup languagecode, markup language tags, and uniform resource locator (URL) contextdata associated with the webpage; and identifying keyword context dataindicative of a type of website and its content based upon the accessedmarkup language code, markup language tags, and uniform resource locator(URL); and wherein accessing the individual media content file metadataincludes: identifying keyword individual media content file metadataindicative of media content based on the accessed individual mediacontent file metadata; and wherein providing an identification of thepreferred media file further includes identifying the preferred mediafile based upon the keyword context data and the keyword individualmedia content file metadata.
 5. The computer-implemented method of claim1, further comprising: accessing a third-party source priorityrequirement associated with media playback; and identifying a prioritymedia file based on the third-party source priority requirement.
 6. Thecomputer-implemented method of claim 5, wherein the third-party sourcepriority requirement includes at least one of a behavioral requirementof engagement performance of the website, an audience requirement ofdemographics of the accessing user, and an advertising requirement of anadvertiser.
 7. The computer-implemented method of claim 1, whereinaccessing the individual media content file metadata associated with theset of media content comprises: extracting time log information from theindividual media content file characterizing portions of the individualmedia content file; determining individual media content file metadatabased on the accessing user viewing at least one portion of theindividual media content file.
 8. The computer-implemented method ofclaim 1, further comprising: receiving updated engagement data from theaccessing user computer, the updated engagement data includingengagement selections made by the accessing user during playback of thepreferred media file identified by an analysis server and provided tothe accessing user via the media player; updating previously receivedengagement data associated with the accessing user to reflect theupdated engagement data; identifying a subsequent media file based onthe updated engagement data, the context data, the individual mediacontent file metadata; and providing a subsequent identification of thesubsequent media file to the accessing user computer to initiateplayback of the subsequent media file via the media player.
 9. Thecomputer-implemented method of claim 8, further comprising: determininga level of engagement of the accessing user with the preferred mediafile; determining a level of engagement of the accessing user with thesubsequent media file; comparing the determined levels of engagement;and compiling feedback associated with the compared determined levels ofengagement.
 10. The computer-implemented method of claim 9, furthercomprising: providing the feedback to a third-party entity and metricsassociated with the accessing user's interaction during playback of thepreferred media file.
 11. A system for prioritizing relevant mediacontent in a media player embedded in a webpage hosted by a websiteserver and accessed by a user computer, comprising: a communicationmodule that transmits data to the user computer; a memory storing a setof computer-executable instructions; and a processor that interfaceswith the communication module and the memory, and executes the set ofcomputer-executable instructions to cause the processor to: accesscontext data associated with the webpage in which the media player isembedded, retrieve, via the communication module, engagement datacorresponding to media content viewing interaction activities by theaccessing user during playback of at least a portion of a set of mediacontent, the engagement data including an amount of views of media filesthat the accessing user has initiated, a play time for each of theviews, and subsequent plays of the media files; access individual mediacontent file metadata associated with the set of media content,determine, based on the context data, the engagement data, and theindividual media content file metadata, a preferred media file of theset of media content, and provide, via the communication module, anidentification of the preferred media file to the accessing usercomputer to initiate playback of the preferred media file via the mediaplayer.
 12. The system of claim 11, wherein the memory further storesthe preferred media file; and wherein to provide the identification ofthe preferred media file to the user computer, the processor isconfigured to: identify a uniform resource locator (URL) associated withthe preferred media file; retrieve the preferred media file from thememory based on the identified uniform resource locator (URL), andprovide the URL associated with the preferred media file to theaccessing user computer.
 13. The system of claim 11, wherein the contextdata associated with the webpage in which the media player is embeddedincludes a size of the media player.
 14. The system of claim 11, whereinto access the context data associated with the webpage, the processor isconfigured to: access a markup language code, markup language tags, anduniform resource locator (URL) context data associated with the webpage,and identify keyword context data indicative of a type of website andits content based upon the accessed markup language code, markuplanguage tags, and uniform resource locator (URL); and wherein accessingthe individual media content file metadata includes: identifying keywordindividual media content file metadata indicative of media content basedon the accessed individual media content file metadata; and whereinproviding an identification of the preferred media file further includesidentifying the preferred media file based upon the keyword context dataand the keyword individual media content file metadata.
 15. The systemof claim 11, wherein the processor is configured to execute the set ofcomputer-executable instructions to further cause the processor to:access a third-party source priority requirement associated with mediaplayback, and identify a priority media file based on the third-partysource priority requirement.
 16. The system of claim 15, wherein thethird-party source priority requirement includes at least one of abehavioral requirement of engagement performance of the website, anaudience requirement of demographics of the accessing user, and anadvertising requirement of an advertiser.
 17. The system of claim 11,wherein to access the individual media content file metadata associatedwith the set of media content, the processor is configured to: extracttime log information from the individual media content filecharacterizing portions of the individual media content file; determineindividual media content file metadata based on the accessing userviewing at least one portion of the individual media content file. 18.The system of claim 11, wherein the processor is configured to executethe set of computer-executable instructions to further cause theprocessor to: receive updated engagement data from the accessing usercomputer, the updated engagement data including engagement selectionsmade by the accessing user during playback of the preferred media fileidentified by an analysis server and provided to the accessing user viathe media player, update previously received engagement data associatedwith the accessing user to reflect the updated engagement data, identifya subsequent media file based on the updated engagement data, thecontext data, and the individual media content file metadata; andprovide a subsequent identification of the subsequent media file to theaccessing user computer to initiate playback of the subsequent mediafile via the media player.
 19. The system of claim 18, wherein theprocessor is configured to execute the set of computer-executableinstructions to further cause the processor to: determine a level ofengagement of the accessing user with the preferred media file;determine a level of engagement of the accessing user with thesubsequent media file; compare the determined levels of engagement; andcompile feedback associated with the compared determined levels ofengagement.
 20. The system of claim 19, wherein the processor isconfigured to execute the set of computer-executable instructions tofurther cause the processor to: provide the feedback to a third-partyentity and metrics associated with the accessing user's interactionduring playback of the preferred media file.